Information processing apparatus and information processing method

ABSTRACT

There is provided with an information processing apparatus. A first obtaining unit obtains data of a reference image indicating a target of printing output to be performed by a printing apparatus. A second obtaining unit obtains data of an image printed by the printing apparatus. A correcting unit corrects a local image density difference or the reference image based on a global image density difference between the reference image and the printed image. An evaluating unit evaluates quality of the printed image based on the local image density difference between the corrected reference image and the printed image.

BACKGROUND OF THE INVENTION Field of the Invention

The present invention relates to an information processing apparatus andan information processing method.

Description of the Related Art

In the printing industry, an inspection (product inspection) work isconventionally performed after printing, in order to ensure that theprinted deliverable to be delivered to the customer has no defect andhas no problem in quality. For example, there is a technique by whichreference image data (to be called reference data hereinafter) of aprinted deliverable as a good product is formed in advance, andinspection is automatically performed by comparing printed image data(to be called print data hereinafter) of a printed product to beinspected with the reference data.

In an electrophotographic printing apparatus, the image density orcoloring of an output deliverable of the same input data sometimeschanges in accordance with the status of the printing apparatus duringthe output operation. Japanese Patent Laid-Open No. 2015-178970discloses an inspection technique taking account of a case like this.That is, in Japanese Patent Laid-Open No. 2015-178970, if a change suchas calibration occurs in a printing apparatus, a master image forperforming defect inspection on a read image is regenerated, and theread image is compared with the master image.

SUMMARY OF THE INVENTION

According to one embodiment of the present disclosure, an informationprocessing apparatus comprises: a first obtaining unit configured toobtain data of a reference image indicating a target of printing outputto be performed by a printing apparatus; a second obtaining unitconfigured to obtain data of an image printed by the printing apparatus;a correcting unit configured to correct a local image density differenceor the reference image based on a global image density differencebetween the reference image and the printed image; and an evaluatingunit configured to evaluate quality of the printed image based on thelocal image density difference between the corrected reference image andthe printed image.

According to one embodiment of the present disclosure, an informationprocessing apparatus comprises: a first obtaining unit configured toobtain data of a reference image indicating a target of printing outputto be performed by a printing apparatus; a second obtaining unitconfigured to obtain data of an image printed by the printing apparatus;a correcting unit configured to correct a local image density differencebetween the reference image and the printed image based on a globalimage density difference between the reference image and the printedimage; and an evaluating unit configured to evaluate quality of theprinted image based on the corrected local image density difference.

According to one embodiment of the present disclosure, an informationprocessing apparatus comprises: a first obtaining unit configured toobtain data of a reference image indicating a target of printing outputto be performed by a printing apparatus; a second obtaining unitconfigured to obtain data of an image p by reading an image printed bythe printing apparatus; a generating unit configured to generatedifference data by using one of a first image density difference betweena pixel in a position of a pixel of interest in the reference image anda pixel in the position of a pixel of interest in the printed image, anda third image density difference obtained by subtracting, from the firstimage density difference, a second image density difference between aregion containing a pixel in the position of a pixel of interest in thereference image and a region containing a pixel in the position of apixel of interest in the printed image, as a difference corresponding toa pixel in the position of a pixel of interest; and an evaluating unitconfigured to evaluate quality of the printed image based on thedifference data.

According to one embodiment of the present disclosure, an informationprocessing method comprises: obtaining data of a reference imageindicating a target of printing output to be performed by a printingapparatus; obtaining data of an image printed by the printing apparatus;correcting a local image density difference or the reference image basedon a global image density difference between the reference image and theprinted image; and evaluating quality of the printed image based on thelocal image density difference between the corrected reference image andthe printed image.

According to one embodiment of the present disclosure, an informationprocessing method comprises: obtaining data of a reference imageindicating a target of printing output to be performed by a printingapparatus; obtaining data of a printed image obtained by the printingapparatus; correcting a local image density difference between thereference image and the printed image based on a global image densitydifference between the reference image and the printed image; andevaluating quality of the printed image based on the corrected localimage density difference.

According to one embodiment of the present disclosure, an informationprocessing method comprises: obtaining data of a reference imageindicating a target of printing output to be performed by a printingapparatus; obtaining data of an image p by reading an image printed bythe printing apparatus; generating difference data by using one of afirst image density difference between a pixel in a position of a pixelof interest in the reference image and a pixel in the position of apixel of interest in the printed image, and a third image densitydifference obtained by subtracting, from the first image densitydifference, a second image density difference between a regioncontaining a pixel in the position of a pixel of interest in thereference image and a region containing a pixel in the position of apixel of interest in the printed image, as a difference corresponding toa pixel in the position of a pixel of interest; and evaluating qualityof the printed image based on the difference data.

Further features of the present invention will become apparent from thefollowing description of exemplary embodiments (with reference to theattached drawings).

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a view showing an example of the functional configuration of aprinting system according to the first embodiment;

FIG. 2 is a view showing an example of the functional configuration ofan information processing apparatus according to the first embodiment;

FIG. 3 is a flowchart showing an example of the processing of aninformation processing method according to the first embodiment;

FIG. 4 is a flowchart showing an example of a difference generationprocess according to the first embodiment;

FIG. 5 is a view for explaining processing to be performed by ageneration unit according to the first embodiment;

FIG. 6 is a view showing an example of a change in printing density withtime of a printing apparatus according to the first embodiment;

FIG. 7 is a view for explaining the significance of the processing to beperformed by the generation unit according to the first embodiment;

FIG. 8 is a view showing an example of the functional configuration ofan information processing apparatus according to the second embodiment;

FIG. 9 is a flowchart showing an example of the processing of aninformation processing method according to the second embodiment;

FIG. 10 is a flowchart showing an example of a determination process ofthe information processing apparatus according to the second embodiment;

FIGS. 11A and 11B are views for explaining the determination process tobe performed by the information processing apparatus according to thesecond embodiment;

FIG. 12 is a view showing an example of a change in printing densitywith time of a printing apparatus according to the second embodiment;

FIG. 13 is a view for explaining an updating process to be performed bythe information processing apparatus according to the second embodiment;

FIG. 14 is a flowchart showing an example of a different determinationprocess according to the second embodiment;

FIG. 15 is a view for explaining a long period image density variationaccording to the second embodiment; and

FIG. 16 is a flowchart showing an example of a notification process ofthe information processing apparatus according to the first embodiment.

DESCRIPTION OF THE EMBODIMENTS

In Japanese Patent Laid-Open No. 2015-178970, the master image isregenerated only when a clear change such as calibration occurs in aprinting apparatus. Accordingly, this technique cannot cope with animage density variation unaccompanied by a clear change, such as animage density variation with time, and hence cannot accurately inspectan output of the printing apparatus in some cases.

One embodiment of the present invention can provide processing foraccurately inspecting an output of a printing apparatus even when noclear change occurs in the printing apparatus.

Hereinafter, embodiments will be described in detail with reference tothe attached drawings. Note, the following embodiments are not intendedto limit the scope of the claimed invention. Multiple features aredescribed in the embodiments, but limitation is not made to an inventionthat requires all such features, and multiple such features may becombined as appropriate.

Furthermore, in the attached drawings, the same reference numerals aregiven to the same or similar configurations, and redundant descriptionthereof is omitted.

First Embodiment

When comparing pixel values of a reference image (reference data)indicating the target of printing output with those of a printed image(print data) and evaluating the image quality (quality) of the printdata, an information processing apparatus according to the firstembodiment corrects the pixel values of the reference data based on aglobal image density difference between the reference data and the printdata. As will be explained in detail later with reference to FIGS. 4 to7, the information processing apparatus corrects pixel values by usingan average pixel value in a local region, in corresponding comparisonregions of the reference data and the print data, and detects a defectbased on the corrected pixel values. This processing can reduce theinfluence of a global printing image density variation that occurs onthe reference data with time, and hence can perform more appropriatedefect detection.

Note that the global image density variation (image density difference)is the image density difference of an arbitrary toner color with respectto the reference data, which uniformly occurs in the whole print data inaccordance with the passage of time, as shown in, for example, FIG. 6.FIG. 6 is a graph showing the output image density difference withrespect to a predetermined pixel value of a given toner color as afunction of the elapsed time, in an electrophotographic printingapparatus. In the electrophotographic printing apparatus, the imagedensity or coloring of an output printed product sometimes changes inaccordance with the status during the output operation, even when thesame input data is given. In this example shown in FIG. 6, toner isreplenished inside the printing apparatus at time t2, and the printingimage density rises. Details of FIG. 6 will be explained later.

FIG. 1 is a block diagram showing an example of the configuration of aprinting system including an information processing apparatus accordingto the first embodiment. The printing system including an informationprocessing apparatus 100 according to this embodiment includes aprinting server 180 and a printing apparatus 190. The printing server180 generates a current print job to be printed, and inputs the printjob to the printing apparatus 190. Based on the input print job, theprinting apparatus 190 forms an image on a printing medium set in apaper feed unit 191. The printing medium on which an image is formed isnot particularly limited, and the following explanation will be made byassuming that paper (a printing sheet) is used as the printing medium.The user sets a printing sheet in the paper feed unit 191 of theprinting apparatus in advance. When a print job is input, the printingapparatus 190 conveys the printing sheet to the information processingapparatus 100 along a conveyance path 192 while forming an image on theobverse surface or on the both surfaces.

The information processing apparatus 100 conveys the paper, that is, theprinted product conveyed through the conveyance path 192 by the printingapparatus 190, by a conveyance path 110 connected from the conveyancepath 192, and at the same time performs an inspection process on theprinted product in order to detect a defect with respect to referencedata, and supplies the printed product to a tray corresponding to theinspection result. The information processing apparatus 100 incorporatesa CPU 101, a RAM 102, a ROM 103, a main storage device 104, a readingdevice 105, a printing apparatus interface (I/F) 106, a general I/F 107,a user interface (UI) panel 108, and a main bus 109. The informationprocessing apparatus 100 also includes the printed product conveyancepath 110 connected to the conveyance path 192, an output tray 111 for aprinted deliverable having passed the inspection process, and an outputtray 112 for a printed product having failed the inspection because adefect is found. In the following explanation, a printed product havingpassed the inspection performed by the information processing apparatus100 because no defect is detected will be called a printed deliverable.

The CPU 101 is a processor for comprehensively controlling theindividual units of the information processing apparatus 100. The RAM102 functions as a main memory and a work area of the CPU 101. The ROM103 stores programs to be executed by the CPU 101. The main storagedevice 104 stores applications to be executed by the CPU 101, and datato be used in image processing. The reading device 105 is a scanner orthe like, and can obtain image data by reading, on the conveyance path110, one surface or the both surfaces of a printed product supplied fromthe printing apparatus. The printing 1/F 106 is connected to theprinting apparatus 190, can synchronize the printed product processingtimings with the printing apparatus 190, and can communicate theiroperation statuses to each other. The general I/F 107 is a serial businterface such as a USB or IEEE1394, and is used by the user to, forexample, obtain and take out data such as a log. The UI panel 108 is aliquid crystal display or the like, functions as a UI of the informationprocessing apparatus 100, and notifies the user of the current statusand setting by displaying them. The UI panel 108 may also be a touchpanel and can include input buttons, in order to accept instructionsfrom the user. The main bus 109 connects the individual units of theinformation processing apparatus 100. The CPU 101 can operate eachinternal part of the information processing apparatus 100 or theprinting system. For example, the CPU 101 can synchronously operate theconveyance paths and selectively convey a printed product to the outputtray 111 for a qualified product or the output tray 112 for adisqualified product in accordance with the inspection result.

FIG. 2 is a block diagram showing an example of the functionalconfiguration of the information processing apparatus 100 shown inFIG. 1. The information processing apparatus 100 includes an inputterminal 201, a reading unit 202, a reference data holding unit 203, aprint data holding unit 204, a generation unit 205, an inspection unit206, a managing unit 207, and an output terminal 208. The input terminal201 receives a control signal as an input to the information processingapparatus 100, which is transmitted as needed or in synchronization withthe output of a printed product from the printing apparatus 190. Theoutput terminal 208 outputs a control signal for an internal operationof the printing system based on the result of inspection performed bythe inspection unit 206. When the control signal is input to the inputterminal 201, the reading unit 202 obtains image data of a printedproduct on the conveyance path 110. This image data obtained by thereading unit 202 is classified into reference data or print data inaccordance with an image read by the reading device 105. The referencedata is stored in the reference data holding unit 203, and the printdata is stored in the print data holding unit 204. The generation unit205 compares the reference data and the print data, and generatesdifference data as the comparison result. This difference data generatedby the generation unit 205 will be described later with reference toFIGS. 4 to 7. Based on the difference data generated by the generationunit 205, the inspection unit 206 determines whether the printed producthas a defect. Then, based on the determination result, the inspectionunit 206 outputs a control signal for an internal driving unit of theprinting system via the output terminal 208. The managing unit 207exchanges information with each functional unit, collects and managesoperation information such as the number of currently processed imagesand the presence/absence of an error, and outputs the result as a log ortransmits a control signal to the whole printing system as needed.

FIG. 3 is a flowchart showing an example of the procedure of a processto be performed by the information processing apparatus 100 according tothis embodiment. The CPU 101 reads out a program corresponding to thisflowchart shown in FIG. 3 and executes the program. In the followingexplanation, each step will be represented by attaching S before thereference number.

In S301, the information processing apparatus 100 obtains referencedata. For this purpose, the user prints a small amount of printedproducts by the printing apparatus, and selects good products that haveno defects and can be delivered as deliverables, from the printedproducts. Then, the reading unit 202 obtains image data by reading theselected good printed products. This image data of the good products isclassified as reference data and stored in the reference data holdingunit. The format of the reference data is not particularly limited, andit is assumed in the following explanation that the reference data isobtained by an RGB 8-bit format (that is, the reference data isrepresented by a three-dimensional vector array having R, G, and Bchannels as elements). In this example, visual inspection is necessaryto select good products in S301, but automatic inspection processing canbe performed in the subsequent process as will be explained below. InS302, the managing unit 207 sets the internal count indicating thenumber of printed deliverables to 1. This count is used until theprinted deliverables reach a predetermined number in a loop in S303 (tobe described below).

In S303 to S311, the printing apparatus 190 performs a productionoperation, and classifies the printed products into printed deliverablesand disqualified products. The information processing apparatus 100repeats the processes in S303 to S311 on printed products sequentiallysupplied from the printing apparatus 190, based on an input controlsignal synchronized with the printing apparatus 190, until the printeddeliverables reach the predetermined number. In S304, the reading unit202 reads the printed product output from the printing apparatus 190,and generates print data as an image to be inspected. This print data isstored in the print data holding unit 204. The format of the print datais not particularly limited, and is the same format as the referencedata, that is, the RGB 8-bit format in this embodiment.

In S305, based on the reference data obtained in S301 and the print dataobtained in S304, the generation unit 205 obtains difference data Dindicating the difference between the reference data as a good productand the print data by taking account of a global image densitydifference between the images. Accordingly, the generation unit 205corrects the pixel values of the reference data based on the globalimage density difference between the images. Then, the difference data Dcan be obtained by calculating the difference from the corrected imagedata. Assume that the difference data is obtained in S305 as image datahaving the same size as that of the reference data and the print data.Details of the obtaining process will be described later with referenceto FIG. 4.

In S306, the inspection unit 206 performs a printed product defectdetection process on the difference data D. The difference data Drecords a value indicating the difference between images for each pixel.Therefore, if there is a region satisfying a predetermined condition onthe difference data D, the inspection unit 206 can detect this region asa region indicating a defect of the printed product. The region existingon the difference data D and indicating a defect of the printed productcan be a pixel for which the value of the difference exceeds apredetermined value, a region where the pixel region like this exceeds apredetermined area, or a region where the pixel region like this forms apredetermined shape such as a line. These regions can be detected byusing a well-known technique, for example, an image filtering process,or a process of calculating the sum of pixel values in a row or a columncorresponding to the line direction. If a region indicating a defect asdescribed above is detected, the inspection unit 206 can regard thecorresponding print data as disqualified data. On the contrary, if thepixel values are 0 or sufficiently small over the entire region of thedifference data D, that is, if there is no difference between thereference data and the print data, it is possible to regard a printedproduct corresponding to the print data as a good product, and classifythe printed product as a printed deliverable.

In S307, the inspection unit 206 determines whether a defect is detectedby the defect detection process in S306. If no defect is detected, theresult is “qualified”, and the process advances to S308. In S308, theinspection unit 206 outputs a control signal to the printing system soas to send the printed product to the tray 111 for printed deliverables.In S309, the managing unit 207 increments the printed deliverable countby 1, and advances the process to S311. If the inspection unit 206determines in S307 that a defect is detected, the result of inspectionis “disqualified”, and the process advances to S310. In S310, theinspection unit 206 outputs a control signal to the printing system soas to send the printed product to the tray 112 for disqualifiedproducts, and advances the process to S311. Note that the informationprocessing apparatus 100 can also include a plurality of trays 112 fordisqualified products, and selectively send printed products to thesetrays in accordance with the types and degrees of detected defects. InS311, the inspection unit 206 determines whether the count of printeddeliverables has reached a predetermined number. If the count hasreached the predetermined number, the inspection unit 206 terminates theprocess. If not, the inspection unit 206 returns the process to S303. Inthis process, it is possible to automatically classify printed productsinto qualified products and disqualified products, and obtain apredetermined number of deliverables for which a predetermined qualityis secured, by adopting the qualified products as final deliverables.

The difference data generation process in S305 will now be explainedwith reference to FIG. 4. FIG. 4 is a flowchart showing an example ofthe procedure of a process by which the generation unit 205 generatesthe difference data D from print data P and reference data R. For thesake of explanation, it is assumed that the print data P and thereference data R have the same size, and neither positional deviationnor rotational deviation occurs during scanning. Assume also that aspecific pixel position (x, y) corresponds to the same position onimages.

In S401, the generation unit 205 repeats processes in S401 to S409 byusing a pixel P(x, y) of the print data P as a pixel of interest. InS402, the generation unit 205 calculates a mean value mp of each of R,G, and B channels in the peripheral region of the pixel P(x, y) ofinterest of the print data P. In this case, mp is a three-dimensionalvector, and each element corresponds to each of the R, G, and Bchannels. FIG. 5 is a view for explaining the relationship between thepixel P(x, y) of interest and its peripheral region for obtaining themean value mp. In FIG. 5, a pixel 501 is the pixel P(x, y) of interest,and a 7×7 region 502 centered around the pixel of interest is a region(mean value obtaining region) for obtaining the mean value. Note thatthe mean value obtaining region has 7×7 pixels for the sake ofexplanation, but the region is not particularly limited to this value,and it is also possible to use a partial region having an appropriatedesired size.

In S403, the generation unit 205 calculates a mean value mr of each ofthe R, G, and B channels in the peripheral region of a pixel R(x, y) ofinterest of the reference data R, in the same manner as in S402. Likemp, mr is a three-dimensional vector corresponding to each of the R, G,and B channels. In S404, the generation unit 205 calculates d0 as apixel value candidate in the position (x, y) of the difference data D inaccordance with equation (1) below. That is, d0 is a simple differencebetween pixel values in the corresponding positions of the print dataand the reference data, and is a three-dimensional vector havingelements corresponding to the R, G, and B channels.

d0=P(x,y)−R(x,y)  (1)

Then, in S405, the generation unit 205 calculates d1 as a pixel valuecandidate different from d0 in the position (x, y) of the differencedata in accordance with equation (2) below. That is, d1 is a pixel valuedifference between the print data and the reference data corrected byusing mp−mr as an offset for matching the mean values in the peripheralregions, in the corresponding positions of the print data P and thereference data R. More specifically, since the mean values of the pixelvalues in the peripheral regions of P(x, y) and R(x, y)+(mp−mr) match, adifference can be calculated while canceling the global image densitydifference between images. The significance of this process will bedescribed in detail later with reference to FIGS. 6 and 7. Like d0, d1is also a three-dimensional vector having elements corresponding to theR, G, and B channels.

d1−P(x,y)−R(x,y)−(mp−mr)  (2)

In S406, the generation unit 205 calculates the squared norms of d0 andd1, and determines which is smaller. If the squared norm of do issmaller, the process advances to S407. If not, the process advances toS408. In S407 or S408, the generation unit 205 adopts one of d0 and d1,which is found to have a smaller squared norm in S406, as a pixel valueD(x, y) in the position (x, y) of the difference data D, and advancesthe process to S409. In S409, the generation unit 205 determines whetherthe processes in S401 to S408 have been performed on all pixel positionsof the print data P and the reference data R. The generation unit 205terminates the process if YES in S409, and returns the process to S401if not.

By repetitively performing S401 to S409 described above on all pixelpositions of the print data P and the reference data R, all pixel valuesof the difference data D are determined, and a difference image data Dis obtained. As a consequence, the difference data D has the same sizeand the same number of channels as those of the print data P and thereference data R, and the pixel position (x, y) corresponds to the sameposition in these image data.

In this processing as described above, it is possible to correct thepixel values of the reference data based on the global image densitydifference between the reference data and the print data, and obtain thedifference data D based on the corrected pixel values. The significanceof performing the correction as described will be explained below.Referring to FIG. 6 again, an image density variation occurs in adirection in which the image density gradually decreases, from time t0at which outputting of the printed product is started to time t2 viatime t1. Also, as described previously, toner replenishment occursinside the printing apparatus at time t2, so the image density ofprinting starts rising. These image density variations often occur onthe whole output printed image.

If the image density variation caused by the characteristics of theprinting apparatus as described above is excessive, this variation canvisually be confirmed even on the printed product, so there is thepossibility that the printed product has a defect. However, unlike whenan image density difference exists in only a local region in one image,if an image density difference from the reference data is uniformlyproduced in the whole print data, the difference is visuallyinconspicuous, so this case is sometimes regarded as being permissible.The purpose of inspecting a printed product is to ensure that theprinted deliverable has no problem in quality. However, if the standardsof the inspection are made excessively strict by giving priority to thequality, the number of disqualified products increases, and this maydecrease the productivity and give bad influence on the delivery dateand the cost. Accordingly, it is not appropriate to simply setexcessively strict inspection standards for every case, and it isdesirable to properly set the inspection standards case by case.

A case in which an inconspicuous image density difference is permittedas described above will be explained below. When the reference data isobtained at time t0, the printing image density at time t1 shifts by anamount indicated by a width 601 even when the same pixel value is input.This image density difference appears and is recorded as a read pixelvalue difference in the difference data D generated by the generationunit 205. If, for such difference data D, the defect detection processthat is based on the difference data D as in S306 but uses only d0 isperformed, that is, if the inspection without taking account of theexistence of a permissible uniform image density difference isperformed, the accuracy of the inspection may decrease or a wrong resultmay be detected because of the density shift, which actually isinconspicuous and permissible uniform image density difference. Fromthis viewpoint, the inspection unit 206 according to this embodimentcorrects the reference data based on the distribution of pixel values ina local region, in order to generate the difference data D by takingaccount of a uniform image density difference as described above. Thatis, a correction where d1−P(x, y)−R(x, y)−(mp−mr) as described above isperformed in this case. The difference d1 is obtained by subtracting theimage density difference between two images P and R, calculated as themean value difference (mp−mr), from d0. Or, as can be obvious fromdeformation d1=(P(x, y)−mp)−(R(x, y)−mr), it is also possible tointerpret that the difference is calculated after the mean values of theprint data P and the reference R are matched. In either interpretation,the inspection unit 206 according to this embodiment can remove thepermissible image density difference from the difference data D bycalculating d1. This makes it possible to perform inspection by reducingthe influence of the global image density difference.

In some cases, however, the inspection accuracy decreases instead byusing d1 in the calculation of the difference data D. A case like thiswill be explained below with reference to FIG. 7. FIG. 7 is a viewshowing reference data 701 around a given pixel (x, y) of interest andprint data 704 in the corresponding position. The reference data 701contains a pixel 702 of interest and a mean value obtaining region 703.The print data 704 contains a pixel 705 of interest and a mean valueobtaining region 706. The print data 704 has a defect region 707 (ahatched portion) having pixel values largely different from those in thecorresponding region of the reference data 701. For the sake ofexplanation, it is assumed that the pixel values in the correspondingpixel positions of the reference data and the print data are the same inregions except the defect region 707. That is, since the pixel values ofthe two pixels of interest in FIG. 7 are the same, the pixel value ofthe pixel (x, y) of interest in the difference data D to be used indefect detection is desirably 0 or a near-zero value by which no defectcan be detected. While d0 is 0, however, mr and mp to be used whencalculating d1 have different values corresponding to that portion ofthe defect region 707, which enters the mean value obtaining region 706.That is, according to the equation of d1, the pixel values are adjustedso as to cancel the difference between mr and mp. Consequently, thedifference between 702 and 705 includes the difference of the defectregion 707 and becomes a significant value, although there is nodifference in regions except the defect region 707.

When taking this into consideration, if the calculated value d1 is usedin a region where the defect region overlaps the mean value obtainingregion, that is, in the peripheral portion of the defect region, thepixel value difference of the defect region is included into thecalculation of d1 of the pixel of interest in the difference data D, andit results in an undesirable pixel value shift of the pixel of interestin the difference data D as if the defect region blurred and expanded.That is, the resolution and the accuracy substantially decrease. Thiscan decrease the accuracy of the defect detection process in later S306.

As described above, therefore, the generation unit 205 according to thisembodiment can adopt one of d1 and d0, which has a smaller squared norm,as the pixel value of each pixel of the difference data D whengenerating the difference data D. According to this processing, it ispossible to reduce the influence of a visually inconspicuous globalimage density difference by adjusting the mean value, and at the sametime prevent the difference of the defect region from being included inthe difference of the pixel of interest in the peripheral portion of thedefect region as described above. This improves the generation accuracyof the difference data, and can also contribute to improving theaccuracy of the inspection itself and the productivity.

The generation unit 205 according to this embodiment generates thedifference data by using each of the whole reference data and the wholeprint data, but the present invention is not limited to this. Thegeneration unit 205 can partially generate the difference data by usinga part of each of the reference data and the print data, and thesubsequent inspection process can sequentially be performed on thepartially generated data.

In the information processing apparatus 100 according to thisembodiment, the generation unit 205 can calculate mr in S403 or reobtainmr used in the past processing, whenever new print data is processed.For example, when the reference data is generated once and remainsunchanged for a predetermined period, the reference data holding unit203 can store mr calculated from the reference data used in the pastprocessing, and the generation unit 205 can read out the stored mrwhenever performing processing.

In this embodiment, it is assumed that the print data P and thereference data R have the same size, and neither positional deviationnor rotational deviation occurs during scanning. In actual processing,however, deviations like these may occur during scanning. From thispoint of view, the information processing apparatus 100 can perform aprocess of correcting positional deviation and rotational deviationduring scanning, on scanned print data. For example, after the printdata is obtained (between S304 and S305), the information processingapparatus 100 performs a feature point extraction process on thereference data and the print data, thereby obtaining correspondingpoints of the two image data. Then, the information processing apparatus100 may obtain a transformation formula (for example, affinetransformation) that matches the obtained corresponding points, andcorrect the deviations by applying the formula. The feature pointextraction process used herein is not particularly limited, and it ispossible to use a well-known method such as SIFT, SURF, ORB, or AKAZE.In S404, the generation unit 205 can also obtain, for the pixel P(x, y)of interest, not only the difference from the pixel R(x, y) of intereston the reference data, but also the differences from each pixel in theperipheral region of R(x, y). In this case, the generation unit 205 canselect a pixel that takes the minimum difference from P(x, y) frompixels in the peripheral region of R(x, y), and adopt the selectedminimum difference as d0. That is, a point that minimizes the imagedensity difference from P(x, y) can be obtained from the peripheralregion of the pixel of interest as a corresponding point.

Furthermore, since a pixel value changes largely in the edge portion(area where pixel values sharply change in a few pixels like a blackline on white background) of an image, even a slight deviation having avisually small influence (about one pixel deviation for example) may becalculated as a large difference in the calculation of the differencedata. From this viewpoint, in S407 and S408 for determining the pixelvalue D(x, y) of the difference data, the generation unit 205 candetermine a value obtained by multiplying d0 or d1 by a weighting factortaking account of the edge region, as the value of D(x, y). That is, itis possible to determine the pixel value D(x, y) by obtaining the edgecomponent of an image by using an edge extraction filter, and thenmultiplying the difference d0 or d1 by the weighting factor such thatthe larger the edge component is, the more the weighting factor reducesthe difference (the closer to 0 the weighting factor is). One example ofthis weighting factor is the reciprocal of the edge component. Note thatthe weighting component used herein can be a weighting componentcorresponding to the edge component as described above, and can also bea weighting component that is generated by obtaining the frequencycharacteristic of each region of an image. Thisfrequency-characteristic-based weighting component reduces thedifference more in a high-frequency region. Processing like this canprevent a value, which is larger than the visual influence, from beingcalculated as the difference data.

Second Embodiment

An information processing apparatus according to the second embodimentdetects a global image density difference between reference data andprint data, and corrects the reference data in accordance with the imagedensity difference. In this embodiment, the reference data is updated tothe print data. Therefore, an information processing apparatus 800according to this embodiment has the same configuration as that of theinformation processing apparatus 100 of the first embodiment, exceptthat the information processing apparatus 800 includes a determinationunit 802, an updating unit 803, and a generation unit 801 instead of thegeneration unit 205, so a repetitive explanation will be omitted. FIG. 8is a block diagram showing an example of the functional configuration ofthe information processing apparatus 800 according to this embodiment. Amanaging unit 207 can exchange information with the determination unit802 and the updating unit 803, but FIG. 8 does not show this informationexchange in order to avoid complexity.

The generation unit 801 generates difference data D in the same manneras the generation unit 205 according to the first embodiment, exceptthat the generation unit 801 uses only d0 and does not use d1, andobtains information necessary to determine whether a global imagedensity difference is produced between images, as will be described indetail later. Based on this information obtained by the generation unit801, the determination unit 802 determines whether a global imagedensity difference is produced between the reference data and the printdata. If the determination unit 802 determines that a global imagedensity difference is produced, the updating unit 803 corrects thereference data.

Processing to be performed by the information processing apparatus 800will be explained below with reference to FIG. 9. FIG. 9 is a flowchartshowing an example of the procedure of the processing to be performed bythe information processing apparatus 800 according to this embodiment.In this example shown in FIG. 9, the same processing as that shown inFIG. 3 is performed except that S901 is performed instead of S305, andS902 and S903 are processed subsequently to S309, so a repetitiveexplanation will be omitted.

In S901, based on reference data obtained in S301 and print dataobtained in S304, the generation unit 801 obtains the difference data Dby the same method as that in the first embodiment, except that d1 isnot used and only d0 is used. The generation unit 801 also obtainsinformation necessary to determine whether a global image densitydifference is produced between images. Then, the determination unit 802determines whether a global image density difference is produced, basedon the information obtained by the generation unit 801. The differencedata generation process performed in S901 will be explained below withreference to FIG. 10.

FIG. 10 is a flowchart showing an example of the procedure of theprocess by which the information processing apparatus 800 according tothe second embodiment generates the difference data D and determines,from the generated difference data, whether a global image densitydifference is produced between print data P and reference data R. Forthe sake of explanation, it is assumed that the print data P and thereference data R have the same size, and neither positional deviationnor rotational deviation occurs during scanning. Assume also that apixel position (x, y) corresponds to identical positions in two images.In S1001, the generation unit 801 initializes a variable Dev to 0. Thevariable Dev represents the number of positions, among pixel positionsin the difference data, where the difference between pixel values in thecorresponding positions of the print data and the reference datasatisfies a predetermined condition. In this example, the variable Devis the number of pixels where the difference between pixel values incorresponding positions of the print data and the reference data fallsoutside a predetermined range by grayscale conversion, but the presentinvention is not particularly limited to this.

In S1002, the generation unit 801 repeats processes in S1002 to S1008 byusing a pixel P(x, y) of the print data as a pixel of interest, untilall pixels on the print data are processed. In S1003, the generationunit 801 calculates the difference d0 between pixel values incorresponding positions (x, y) of the print data P and the referencedata R, in the same manner as in S404 of the first embodiment. In S1004,the generation unit 801 determines a pixel value in the pixel position(x, y) of the difference data D as the value of d0 calculated in S1003.

In S1005 to S1008, the generation unit 801 obtains information necessaryto determine whether a global image density difference is producedbetween the images. First, in S1005, the generation unit 801 performsgrayscaling (one-dimensional conversion) on the pixel values of P(x, y)and R(x, y). Then, the generation unit 801 calculates the differencebetween the grayscaled pixel values of P(x, y) and R(x, y) as a variabledL. FIG. 10 shows this grayscaling calculation as gray( ). Thegrayscaling process to be performed by the generation unit 801 is notparticularly limited, so an arbitrary method can be used. For example,letting r(x, y), g(x, y), and b(x, y) be the values of the elements ofR, G, and B channels in the pixel position (x, y), the generation unit801 can calculate gray(x, y) by using weighted linear sum as indicatedby equation (3) below:

gray(x,y)=0.21×r(x,y)+0.72×g(x,y)+0.072×b(x,y)  (3)

The generation unit 801 can also calculate gray(x, y) by applying aconversion function for converting the luminance, the brightness, or theimage density (optical density) from the color space of the imageobtained by a reading unit 202 into the grayscale. Furthermore, thegeneration unit 801 can obtain the characteristics of theabove-described conversion function as an LUT (Look Up Table) inadvance, and obtain gray(x, y) by LUT processing.

In S1006, the generation unit 801 uses two predetermined thresholds Th1and Th2 (0≤Th1≤Th2), and determines whether the variable dL falls withinthe range of Th1 (inclusive) to Th2 (inclusive). If dL falls within thisrange, the process advances to S1008. If dL falls outside this range,the process advances to S1007. In S1007, the generation unit 801increments the value of the variable Dev by 1, and advances the processto S1008. In S1008, the generation unit 801 determines whether theprocesses in S1002 to S1007 have been performed on all pixel positionsof the print data P and the reference data R. The generation unit 801advances the process to S1009 if YES in S1008, and returns the processto S1002 if not.

In S1009, the determination unit 802 determines whether the value of thevariable Dev is 1 or more. If Dev is not 1 or more, that is, if thevariable dL falls within the predetermined range (Th1 (inclusive) to Th2(inclusive)) in all pixel positions, the process advances to S1010. Ifnot, that is, if the variable dL falls outside the predetermined range,the process advances to S1011. In S1010, the determination unit 802determines that no global image density difference between images isdetected, and advances the process to S306. In S1011, the determinationunit 802 determines that a global image density difference betweenimages is detected, and advances the process to S306.

Note that in S306, an inspection unit 206 performs a printed productdefect detection process on the difference data D in the same manner asin the first embodiment, but the difference data D in this embodiment isobtained by using only d0 as described above. In the process in S306,unlike S901, however, it is also possible to obtain difference data byusing d1 and d0 like the difference data D used in the first embodiment,and use the obtained difference data.

In S902 subsequent to S309, the updating unit 803 determines whether aglobal image density difference is detected between the images, byreferring to the result of the image density difference determinationperformed in S1009 to S1011. If the determination is YES, that is, if nodefect is detected in S307 and a global image density difference isdetected in S1011, the process advances to S903. In S903, the updatingunit 803 updates the reference data stored in a reference data holdingunit 203 by the print data referred to in S304. That is, the referencedata is overwritten by the print data. Then, the process advances toS311. If the determination in S902 is NO, that is, if no defect isdetected in S307 and no global image density difference is detected inS1010, the reference data is not updated, and the process advances toS311.

If the above process is complete, the information processing apparatus800 returns the process from S311 to S303, and repeats the process on anext printed product. Especially when the reference data is updated inS903, the updated reference data is used in the next and subsequentprocesses.

According to the process as described above, it is possible to determinewhether a global image density difference is produced between images byusing the pixel value difference between the print data and thereference data and the predetermined thresholds, and correct (update)the reference data based on the determination result. The significanceof this correction will be explained with reference to FIGS. 11 to 13.In FIG. 11, the abscissa represents the pixel position, and the ordinaterepresents the grayscaled pixel value. Also, the ordinate representsvalues close to white (low image density) in the upper portion, andvalues close to black (high image density) in the lower portion. In FIG.11(A), a curve 1101 represents a grayscaled value gray(R(x, y)) of eachpixel when given reference data R(x, y) is grayscaled. Curves 1102 and1103 are respectively obtained by adding the thresholds Th1 and Th2 tothe pixel values of the curve 1101.

FIG. 11(B) represents the same situation as shown in FIG. 1(A) bysubtracting the curve 1101 from each curve to make the curve 1101 thebasis of the graph. Referring to FIG. 11(B), the curve 1101 is in aposition overlapping the abscissa. Also, the curve 1102 corresponds to acurve 1105 whose value is Th1, and the curve 1103 corresponds to a curve1106 whose value is Th2. When the reference data is updated in S902 andS903, all dL values fall within the range of Th1 (inclusive) to Th2(inclusive) as the set of thresholds, that is, values exist (in ahatched portion) between the curves 1105 and 1106 in all pixel positionsof the print data in FIG. 11.

FIG. 12 is a view representing an example of an image density variationwith time of the printing apparatus, by the image density of printing asa function of the elapsed time (or the number of printed products). Inthis example, the reference data R is obtained at time 0, and the printdata P to be inspected is obtained based on an output printed product attime t. Also, in the print data P, an image density difference at eachtime, which is based on the image density at time 0 (for example, awidth 1201 at time t), appears on the whole image.

The information processing apparatus 800 can update the reference datawhen detecting an image density difference on the whole image, which isvisually inconspicuous and regarded as being permissible. This visuallyinconspicuous and permissible image density difference on the wholeimage presumably satisfies, for example, conditions (A) to (C) below:

(A) The absolute value of the difference does not exceed a predeterminedvalue in the whole area of an image

(B) The positive or negative directions of the difference are constantin the whole area of an image

(C) The absolute value of the difference can be regarded as being analmost constant value in the whole area of an image

The condition (A) corresponds to a state in which the printed product isa qualified product. The condition (A) can be set because a large imagedensity difference between images cannot be regarded as being visuallypermissible, regardless of whether the difference is a local differenceor a uniform difference on the entire image. The conditions (B) and (C)correspond to a state in which an image density difference that can beregarded as being uniform is produced on the entire image. If print datais against the condition (B) or (C), a local image density difference isproduced in the print data.

In addition, if reference data to be updated will remain almostunchanged before and after the update, the information processingapparatus 800 need not perform this update by assuming that the updatingmakes no or little difference. Corresponding to this, a condition (D)below can be added to the above-described conditions.

(D) The absolute value of the difference is equal to or larger than apredetermined value in the whole area of an image

The embodiment explained with reference to FIGS. 9 and 10 is carried outby embodying the conditions (A) to (D) such that the variable dL isequal to or larger than the threshold (Th1) and equal to or smaller thanthe threshold (Th2) in the entire area of an image. Examples of a casein which the reference data is updated and a case in which the referencedata is not updated will be explained below with reference to FIG. 13,in a form superposed on FIG. 11(B).

A solid line 1301, a broken line 1302, and an alternate long and shortdashed line 1303 are curves representing the grayscaled values dL ofpixel values of print data corresponding to different printed products.The solid line 1301 satisfies the conditions because it exists in thehatched portion satisfying the conditions in the entire area, so thereference data is updated in S903. This is equivalent to a case in whichthe printed product is a qualified product and a global image densitydifference is detected. The broken line 1302 partially extends outsidethe hatched portion, so the reference data is not updated. This isequivalent to a case in which the printed product fails the inspection.The alternate long and short dashed line 1303 is entirely dL

0 and extends outside the hatched portion, so the reference data is notupdated. This is equivalent to a case in which the printed product is aqualified product but the reference data need not be updated because theimage density difference is small.

This processing as described above can detect a global image densitydifference between images from the pixel value difference between thepixel positions of the reference data and the print data. Then, thereference data can be corrected based on this image density difference.In particular, overwriting the reference data by the print data canprevent a visually inconspicuous image density difference from beingincluded in the difference data. This can contribute to improving theinspection accuracy and the productivity.

Note that in this case, the loop processing in S303 to S311 of FIG. 9 issuccessively performed. Accordingly, when a global image densitydifference is produced continuously with time, the global image densitydifference detected in S902 also increases continuously with time likethe value shown in FIG. 12. In an example like this, the reference datais updated again when the value of that image density difference basedon the updated reference data, increasing continuously with time, fallswithin a predetermined range (Th1 (inclusive) to Th2 (inclusive)) again,and the following processing is performed with the newly updatedreference data.

Also note that, in the processing shown in FIG. 10, the determinationmethod by which the variable dL is Th1 (inclusive) to Th2 (inclusive) asthe set of thresholds in the entire area of an image is taken as anexample of embodying the conditions (A) to (D), but the presentinvention is not particularly limited to this. For example, thegeneration unit 801 may embody the conditions (A) to (D) by using astatistical feature amount, and determine whether to update thereference data. Processing like this will be explained below withreference to FIG. 14.

FIG. 14 is a flowchart showing an example of the above-describeddetermination method that uses a statistical feature amount and isperformed by the information processing apparatus 800. This exampleshown in FIG. 14 uses three variables Max, Sum, and Sum2 instead of thevariable Dev. The generation unit 801 calculates a maximum value, a sum,and a sum of squares of the absolute value of the variable dL by usingMax, Sum, and Sum2. In the example shown in FIG. 14, therefore, the sameprocess as that shown in FIG. 10 is performed except that the processperforms S1401 instead of S1001, S1402 instead of S1006 and S1007, andS1403 to S1406 instead of S1009 to S1011.

In S1401, the generation unit 801 first initializes the variables Max,Sum, and Sum2 to 0, and advances the process to S1002. Also, in S1402following S1005, the generation unit 801 substitutes, for the variableMax, a larger one of the absolute value of the variable dL and thevariable Max (FIG. 14 shows this by max( )), adds the value of dL to thevariable Sum, and adds the value of the square of dL to the variableSum2. In S1403 as a step following S1008, that is, as a step next to thecompletion of the loop processing from S1002 to S1008 for all pixelpositions, the generation unit 801 calculates a mean value Mean of dL bydividing the variable Sum by a pixel value N. In addition, thegeneration unit 801 calculates a variance value V of dL from Sum2 andMean.

The loop processing from S1002 to S1008 can be performed on individualpixel positions in order or in parallel. When performing the processingin parallel, the generation unit 801 sets the maximum value of dLcalculated for the unit of the parallel processing as Max, the sum of dLas Sum, and the sum of squares of dL as Sum2. Furthermore, when thepixel number N is a constant, the dividing process using N may also beomitted from the Mean and V calculation process.

In S1404, the determination unit 802 respectively compares thecalculated Max, Mean, and V with predetermined thresholds Th_Max,Th_Mean, and Th_V. If it is determined that Max is equal to or smallerthan Th_Max, Mean is equal to or larger than Th_Mean, and V is equal toor smaller than Th_V, the determination unit 802 advances the process toS1405, and determines that a global image density difference isproduced. If at least one of these conditions is not satisfied, thedetermination unit 802 advances the process to S1406, and determinesthat no global image density difference is produced.

When collating this determination performed in S1404 with theabove-described conditions (A) to (D), a case in which it is determinedthat the maximum value Max is smaller than Th_Max corresponds to thecondition (A). A case in which it is determined that the mean value Meanis larger than Th_Mean corresponds to the condition (D), and it alsocorresponds to the condition (B) because the mean value tends todecrease if the image density difference moves between positive andnegative. A case in which V is smaller than Th_V corresponds to theconditions (B) and (C). The processing like this can detect a globalimage density difference between images by using the image densitydifference distribution in each pixel position and statistical featureamounts, and update the reference data.

As explained with reference to, for example, FIG. 11 and FIG. 12, thegeneration unit 801 according to this embodiment detects an imagedensity variation in the direction in which the image density decreases,but the present invention is not particularly limited to this. Forexample, the generation unit 801 can detect an image density variationin the direction in which the image density increases, and can alsodetect an image density variation in both the image density directions:increase and decrease. To detect an image density variation in thedirection in which the image density increases, the generation unit 801can set thresholds like Th1 and Th2 and a determination mechanism in thedirection in which the image density increases as well, and perform thedetermination process as shown in FIG. 10.

The information processing apparatus 800 according to this embodimentcan also add a condition (E) in which an image density variation isdetected in the same direction, increase or decrease, continuously alongthe time axis, to the conditions to be used to update the referencedata. That is, the reference data can be updated when a long periodvariation ingredient of an image density variation is detected. The longperiod variation ingredient represents an image density variationingredient having the same sign, which is continuously detected for apredetermined period or more. The condition (E) will be explained belowwith reference to FIG. 15.

FIG. 15 is a view representing an example of an image density variationin the printing apparatus in which no long period image densityvariation occurs. Referring to FIG. 15, the abscissa represents the time(or the number of printed products), the ordinate represents therelative image density of print data, and the image density of theprinted product at time 0 is used as the reference of the relative imagedensity. In this diagram, we assume the reference data updatedetermination condition in the second embodiment is satisfied at timet3, and the print data is darker than the reference data in this case,so the image density becomes higher when the reference data is updated.Reference numeral 1501 represents the amount of image density variationin this case. Also, assume the reference data update determinationcondition is satisfied at time t4 immediately after time t3, and theprint data is lighter than the reference data in this case, so the imagedensity becomes lower when the reference data is updated. In this case,a phenomenon in which the reference data is updated to the image densityin the opposite direction within a short time period and the referencebecomes unstable occurs. It should be noted that when the process isperformed at time t3, a future image density variation is unknown.

By taking account of the phenomenon as described above, the informationprocessing apparatus 800 may also detect only a long period change inimage density variation, in order not to update the reference data byexcessively catching an image density variation that occurs within ashort time or accidentally. That is, for example, the informationprocessing apparatus 800 can update the reference data only when animage density variation is temporally continuously detected in the samedirection. Therefore, as the condition that is used in S902 in order toadvance the process to S903, a condition that an image density variationis detected and an image density variation in the same direction iscontinuously detected a predetermined number of times is added. Theupdating unit 803 may also store the log of information on the detectedimage density variation in the managing unit 207 and refer to the log.The processing like this can improve the accuracy or stability ofdetection of the image density variation as a target, and preventinappropriate reference data update.

The updating unit 803 according to this embodiment updates the referencedata by overwriting it by the print data, but the reference dataupdating method is not particularly limited to this. The updating unit803 can update the reference data by an arithmetic operation based onthe difference between pixel values in corresponding pixel positions ofthe reference data and the print data. For example, the updating unit803 can set the mean of pixel values in corresponding pixel positions ofthe reference data and the print data as the pixel value of the updatedreference data. The updating unit 803 can also update the reference databy performing weighted addition on pixel values in corresponding pixelpositions of the reference data and the print data. Furthermore, theupdating unit 803 can update the reference data by adding a value to thepixel value of the reference data or multiplying the pixel value of thereference data by a value, based on the detected image densitydifference between images. The processing like this can reduce themagnitude of a change when the reference data is updated.

The thresholds Th1 and Th2 to be used to detect a global image densitydifference can be constant regardless of the image density of the pixelvalue of the reference data, and can also change for each pixel value inaccordance with the characteristic (a so-called image densitycharacteristic gamma) of the image density variation of the printingapparatus. That is, in FIG. 11A, Th1 and Th2 can change in accordancewith the height (pixel value) of the curve 1101, and the position andheight of the hatched portion and the shapes of the curves 1102 and 1103can also change.

[Example of Performing User Notification]

This specification has disclosed examples of the information processingapparatus capable of performing an inspection process, while adaptivelyinserting an adjusting process, on a permissible image density variationthat occurs with time in the printing apparatus. On the other hand, ifan image density variation is large, the variation visually has largeinfluence, so the printed product is not admitted as a qualifiedproduct. In addition, there is the possibility that abnormality hasoccurred in printing output or image density adjustment, so similarprinted products may be output continuously or frequently. If theoperation is continued in this state, the productivity decreases, so itis desirable to quickly encourage the user to perform confirmation. Fromthis viewpoint, if the detected image density variation is larger than apredetermined variation, the information processing apparatus canpresent this state to the user, and encourage the user to determinewhether to perform calibration or continue outputting. In addition, whenencouraging this user determination, the information processingapparatus can temporarily stop the inspection process currently beingperformed.

The above-described user determination encouraging process to beperformed by the information processing apparatus 100 according to thefirst embodiment will be explained below with reference to FIG. 16. Inthis processing example shown in FIG. 16, the same processing as shownin FIG. 4 is performed except that S1601 to S1605 are added, so arepetitive explanation will be omitted. In S1601 following S304, thegeneration unit 205 initializes a variable Err to 0, and advances theprocess to S401. The variable Err is a variable for counting pixelshaving large differences between the reference data and the print data,and storing the count. In S1602 following S404, the generation unit 205determines whether the absolute value of d0 calculated in S404 is equalto or smaller than a predetermined threshold Th_E. Th_E is a thresholdrepresenting a large pixel value suggesting abnormality of the printingapparatus, and can suitably be set to a desired value. If the absolutevalue of d0 is equal to or larger than the threshold Th_E, the processadvances to S1603. If not, the process advances to S405. In S1603, thegeneration unit 205 increments the variable Err by 1, and advances theprocess to S405. In the processing performed in S1602, mp and mr mayalso be used instead of d0.

In S1604 following the loop processing in S401 to S409, the generationunit 205 compares the value of the variable Err with a predeterminedthreshold Th_N_Err. The threshold Th_N_Err is a threshold set for thenumber of pixels found to have large differences between the referencedata and the print data. If the variable Err is equal to or larger thanthe threshold Th_N_Err, it is determined that a large image densityvariation suggesting abnormality of the printing apparatus has occurredin the whole image. On the other hand, if the variable Err is smallerthan the threshold Th_N_Err, it is determined that even when thevariable Err is counted, that is due to a local image density variation,that is, due to a defect other than a global image density difference.If it is determined that the variable Err is equal to or larger than thethreshold Th_N_Err, the process advances to S1605. If not, thegeneration unit 205 terminates the process. In S1605, the generationunit 205 notifies the user of the possibility of abnormality of theprinting apparatus via the UI panel 108, and encourages the user todetermine, for example, whether to check the printing apparatus. Whenperforming this notification, the information processing apparatus 100can temporarily stop the processing of the printing apparatus. Also, thecondition by which the generation unit 205 encourages the user to make adecision is not limited to that in S1604. For example, it is possible toadd a condition that an image density variation is detected in only thesame direction, or a condition that an image density variation istemporally continuously detected. The threshold Th_N_Err is notparticularly limited, and can be given as a desired value in accordancewith the condition. The processing like this can also be performed bythe information processing apparatus 800 according to the secondembodiment, instead of the information processing apparatus 100. In thisprocessing, when an image density variation falls within a predeterminedrange (for example, within Th_E), it can be determined that the printedproduct is a good product by taking account of d1 even if the imagedensity variation has occurred. On the other hand, if the image densityvariation exceeds the predetermined range, the user is notified of thisinformation.

In the processing like this, if a large image density difference isdetected, the user is quickly encouraged to give his or herconfirmation. This can improve the productivity as a whole by, forexample, suppressing the generation of disqualified products.

[Log]

When an event such as detection of the image density difference, updateof the reference data, or notification to the user has occurred, themanaging unit 207 can also store the occurrence time of the event, agenerated job, and data as the basis of the occurrence of the event. Inthis case, the managing unit 207 can output these pieces of informationto the user as needed. The data like this can be used in, for example,confirmation of the printed deliverable, verification of the inspectionresult, or the maintenance of the printing apparatus.

[User Mode]

A case in which a visually inconspicuous image density difference ispermitted by taking account of the balance with the productivity as hasbeen described above is possible, but this case is not always possible,and a case in which it is desirable to strictly manage deliverables bygiving priority to the quality is also possible. From this viewpoint,the above-described embodiment can be implemented as one mode, andwhether to use the mode of the above-described embodiment can bedetermined in accordance with a use case.

[Condition of Color]

The information processing apparatus 800 according to the secondembodiment detects a global image density difference by grayscaling theprint data and the reference data. In this case, while the grayscaledimage density difference is easily permitted, stricter management issometimes required for the variations of colors such as the color of theskin of a person and food. From this point of view, the informationprocessing apparatus 800 can add color variation conditions in order todetect the image density variation or update the reference data. Forexample, the information processing apparatus 800 can detect the imagedensity variation or update the reference data when pixel values r:g:bof the R, G, and B channels of the print data fall within apredetermined range with respect to the ratio of r:g:b of the referencedata. As another example, the information processing apparatus 800 candetect the image density variation or update the reference data when thecolor space of the print data and the reference data is converted into acolor-system color space (for example, CIE L*a*b*), and the colorvariation after the conversion falls within a predetermined range.

In the first and second embodiments, an image density variation isdetected from the pixel value of the print data generated by the readingdevice 105. Therefore, the image density variation detection process canbe performed by including the process in the printed product defectdetection process, and this obviates the need for a device for imagedensity variation detection only. However, the present invention is notlimited to this, and the information processing apparatus may alsoinclude another means such as an image density sensor, and detect animage density variation by measuring the image density of the printedproduct by using the image density sensor. In addition, the readingdevice 105 can obtain image data by using an image capturing device,instead of obtaining image data by a system such as a scanner.Furthermore, the present invention is not limited to the contentsdirectly explained above, and may also be implemented by combining theelements and the concepts explained in each embodiment.

Other Embodiments

Embodiment(s) of the present invention can also be realized by acomputer of a system or apparatus that reads out and executes computerexecutable instructions (e.g., one or more programs) recorded on astorage medium (which may also be referred to more fully as a‘non-transitory computer-readable storage medium’) to perform thefunctions of one or more of the above-described embodiment(s) and/orthat includes one or more circuits (e.g., application specificintegrated circuit (ASIC)) for performing the functions of one or moreof the above-described embodiment(s), and by a method performed by thecomputer of the system or apparatus by, for example, reading out andexecuting the computer executable instructions from the storage mediumto perform the functions of one or more of the above-describedembodiment(s) and/or controlling the one or more circuits to perform thefunctions of one or more of the above-described embodiment(s). Thecomputer may comprise one or more processors (e.g., central processingunit (CPU), micro processing unit (MPU)) and may include a network ofseparate computers or separate processors to read out and execute thecomputer executable instructions. The computer executable instructionsmay be provided to the computer, for example, from a network or thestorage medium. The storage medium may include, for example, one or moreof a hard disk, a random-access memory (RAM), a read only memory (ROM),a storage of distributed computing systems, an optical disk (such as acompact disc (CD), digital versatile disc (DVD), or Blu-ray Disc (BD)™),a flash memory device, a memory card, and the like.

While the present invention has been described with reference toexemplary embodiments, it is to be understood that the invention is notlimited to the disclosed exemplary embodiments. The scope of thefollowing claims is to be accorded the broadest interpretation so as toencompass all such modifications and equivalent structures andfunctions.

This application claims the benefit of Japanese Patent Application No.2020-030845, filed Feb. 26, 2020, which is hereby incorporated byreference herein in its entirety.

What is claimed is:
 1. An information processing apparatus comprising: afirst obtaining unit configured to obtain data of a reference imageindicating a target of printing output to be performed by a printingapparatus; a second obtaining unit configured to obtain data of an imageprinted by the printing apparatus; a correcting unit configured tocorrect a local image density difference or the reference image based ona global image density difference between the reference image and theprinted image; and an evaluating unit configured to evaluate quality ofthe printed image based on the local image density difference betweenthe corrected reference image and the printed image.
 2. The apparatusaccording to claim 1, wherein the correcting unit corrects the localimage density difference in a specific pixel position or the referenceimage, based on comparison between a partial region centered around thespecific pixel position in the reference image, and a partial regioncentered around the specific pixel position in the printed image.
 3. Theapparatus according to claim 1, wherein the correcting unit corrects thelocal image density difference in a specific pixel position or thereference image, based on comparison between a pixel value distributionin a partial region centered around the specific pixel position in thereference image, and a pixel value distribution in a partial regioncentered around the specific pixel position in the printed image.
 4. Theapparatus according to claim 1, wherein the evaluating unit evaluatesthe quality of the printed image based on a local image densitydifference between the reference image and the printed image in which aninfluence of the global image density difference is reduced.
 5. Theapparatus according to claim 4, wherein the evaluating unit evaluatesthat the quality of the printed image has a defect, if a smaller one ofa local image density difference between the reference image in which aninfluence of the global image density difference is reduced and theprinted image, and a local image density difference between thereference image and the printed image, in corresponding pixel positions,is not less than a first threshold.
 6. The apparatus according to claim4, wherein the evaluating unit evaluates that the quality of the printedimage has a defect, if a region formed by pixels in pixel positionswhere a smaller one of a local image density difference between thereference image in which an influence of the global image densitydifference is reduced and the printed image, and a local image densitydifference between the reference image and the printed image, incorresponding pixel positions, is not less than a first threshold, has apredetermined shape.
 7. The apparatus according to claim 1, wherein thecorrecting unit determines whether the global image density differencesatisfies a predetermined condition, and corrects the reference imagebased on the printed image if the global image density differencesatisfies the predetermined condition, and the evaluating unit uses thecorrected reference image to evaluate quality of another printed image.8. The apparatus according to claim 7, wherein the correcting unitcorrects the reference image if an image density difference betweencorresponding pixel positions in the printed image and the referenceimage is not more than a second threshold in all pixel positions of theprinted image.
 9. The apparatus according to claim 8, wherein thecorrecting unit corrects the reference image if an image densitydifference between corresponding pixel positions in the printed imageand the reference image is not less than a third threshold in all pixelpositions of the printed image.
 10. The apparatus according to claim 7,wherein the correcting unit determines based on a distribution of imagedensity differences between corresponding pixel positions in the printedimage and the reference image whether the global image densitydifference satisfies the predetermined condition.
 11. The apparatusaccording to claim 10, wherein the correcting unit corrects thereference image if, in all pixel positions of the printed image, animage density difference between corresponding pixel positions in theprinted image and the reference image has the same sign, and a maximumvalue, a mean value, and a variance value of an image density differencebetween corresponding pixel positions of the printed image and thereference image in each pixel position of the printed image arerespectively not more than a fourth threshold, not less than a fifththreshold, and not more than a sixth threshold.
 12. The apparatusaccording to claim 7, wherein the reference image is corrected byupdating the reference image to the printed image.
 13. The apparatusaccording to claim 1, further comprising a notification unit configuredto notify a user of the global image density difference.
 14. Theapparatus according to claim 1, wherein the global image densitydifference is produced in accordance with an elapsed time or the numberof times of output from the printing apparatus.
 15. The apparatusaccording to claim 1, wherein the first obtaining unit obtains an outputfrom the printing apparatus at a first time as the reference image, andthe first obtaining unit obtains, as the printed image, an output fromthe printing apparatus at a second time at which the printing apparatuskeeps operating from the first time.
 16. An information processingapparatus comprising: a first obtaining unit configured to obtain dataof a reference image indicating a target of printing output to beperformed by a printing apparatus; a second obtaining unit configured toobtain data of an image printed by the printing apparatus; a correctingunit configured to correct a local image density difference between thereference image and the printed image based on a global image densitydifference between the reference image and the printed image; and anevaluating unit configured to evaluate quality of the printed imagebased on the corrected local image density difference.
 17. Aninformation processing apparatus comprising: a first obtaining unitconfigured to obtain data of a reference image indicating a target ofprinting output to be performed by a printing apparatus; a secondobtaining unit configured to obtain data of an image p by reading animage printed by the printing apparatus; a generating unit configured togenerate difference data by using one of a first image densitydifference between a pixel in a position of a pixel of interest in thereference image and a pixel in the position of a pixel of interest inthe printed image, and a third image density difference obtained bysubtracting, from the first image density difference, a second imagedensity difference between a region containing a pixel in the positionof a pixel of interest in the reference image and a region containing apixel in the position of a pixel of interest in the printed image, as adifference corresponding to a pixel in the position of a pixel ofinterest; and an evaluating unit configured to evaluate quality of theprinted image based on the difference data.
 18. An informationprocessing method comprising: obtaining data of a reference imageindicating a target of printing output to be performed by a printingapparatus; obtaining data of an image printed by the printing apparatus;correcting a local image density difference or the reference image basedon a global image density difference between the reference image and theprinted image; and evaluating quality of the printed image based on thelocal image density difference between the corrected reference image andthe printed image.
 19. An information processing method comprising:obtaining data of a reference image indicating a target of printingoutput to be performed by a printing apparatus; obtaining data of aprinted image obtained by the printing apparatus; correcting a localimage density difference between the reference image and the printedimage based on a global image density difference between the referenceimage and the printed image; and evaluating quality of the printed imagebased on the corrected local image density difference.
 20. Aninformation processing method comprising: obtaining data of a referenceimage indicating a target of printing output to be performed by aprinting apparatus; obtaining data of an image p by reading an imageprinted by the printing apparatus; generating difference data by usingone of a first image density difference between a pixel in a position ofa pixel of interest in the reference image and a pixel in the positionof a pixel of interest in the printed image, and a third image densitydifference obtained by subtracting, from the first image densitydifference, a second image density difference between a regioncontaining a pixel in the position of a pixel of interest in thereference image and a region containing a pixel in the position of apixel of interest in the printed image, as a difference corresponding toa pixel in the position of a pixel of interest; and evaluating qualityof the printed image based on the difference data.